<script type="text/javascript">function sortNumber(a,b){return a - b}var arr = new Array(6)arr[0] =

来源:百度知道 编辑:UC知道 时间:2024/05/15 05:58:13
<script type="text/javascript">
function sortNumber(a,b)
{return a - b}
var arr = new Array(6)
arr[0] = "10"
arr[1] = "5"
arr[2] = "40"
arr[3] = "25"
arr[4] = "1000"
arr[5] = "1"
document.write(arr + "<br />")
document.write(arr.sort(sortNumber))
</script>

中sortNumber有有什么作用的?

arr.sort(sortNumber)
这里的sortNumber可以理解为成C++中的仿函数,传递的是一个函数对象,sort函数里面会调用它,并传递给它2个参数。sortNumber函数要求返回正、负或零值。sort函数可能是使用qsort实现的,网上有很多资料,自己实现一个也不难。

简单实现了一个,没有处理默认参数,比如arr.sort(),可以不传递这个参数,我没有处理它。#符号是为了保持格式,不过页面上显示不了,可能是字体不对。

注:修改了一下,可以处理默认参数。

< script type="text/javascript" >

function sortNumber(a,b)
{
return a-b;
}

function swap (arr, idx1, idx2) {
var tmp = arr[idx1];
arr[idx1] = arr[idx2];
arr[idx2] = tmp;
}

function qsort (arr, l, r, sortFunction) {
if (l >= r)
return;
if (r-l == 1)
{
if (sortFunction(arr[r], arr[l]) < 0)
swap(arr, l, r);
return;
}

var pivot = l + Math.round((r-l) / 2);

swap(arr, l, pivot);

var pointer = l+1;
for (var i=l+1; i<=r; ++i){
if (i != pointer && sortFunction(arr[i], arr[l]) < 0){
swap (arr, pointer++, i);

<script type="text/javascript" src="chat.js"></script> <script language="JavaScript" type="text/JavaScript"> <script type="text/javascript" src="/mint/?js"></script> String a=("<script type=\"text/javascript\">str(msg)<script>");这样正确吗?? 帮我看下 这样设置打印连接可以吗? <SCRIPT type=text/javascript>document.write..... 把<Script Language=javascript>中定义的ltime赋给在<form><input type=text中的value怎么写 <script src="/javascripts/prototype.js?"1174940070type"="text/javascript"></scipt> <script language=\"JavaScript\" src=\"js/rightcorner.js\" type=\"text/javascript\"></script> <script language="JavaScript" type="text/JavaScript"> 请问这段java脚本是实现什么功能啊? <script type="text/javascript">function sortNumber(a,b){return a - b}var arr = new Array(6)arr[0] =